#define TRIG 2 #define ECHO 4 #define LED_VERDE 6 #define LED_AMARILLO 7 #define LED_ROJO 8 void setup() { pinMode(TRIG, OUTPUT); pinMode(ECHO, INPUT); pinMode(LED_VERDE, OUTPUT); pinMode(LED_AMARILLO, OUTPUT); pinMode(LED_ROJO, OUTPUT); Serial.begin(9600); } void loop() { // Disparo del sensor digitalWrite(TRIG, LOW); delayMicroseconds(2); digitalWrite(TRIG, HIGH); delayMicroseconds(10); digitalWrite(TRIG, LOW); // Lectura long duration = pulseIn(ECHO, HIGH); long distance = duration * 0.034 / 2; Serial.print("Distancia: "); Serial.print(distance); Serial.println(" cm"); // Apagar todos los LEDs digitalWrite(LED_VERDE, LOW); digitalWrite(LED_AMARILLO, LOW); digitalWrite(LED_ROJO, LOW); // Lógica con ajuste fino if (distance > 20) { digitalWrite(LED_VERDE, HIGH); } else if (distance > 10 && distance <= 20) { digitalWrite(LED_AMARILLO, HIGH); } else if (distance > 0 && distance <= 10) { digitalWrite(LED_ROJO, HIGH); } delay(200); }